home *** CD-ROM | disk | FTP | other *** search
- print "1..48\n";
-
- use URI;
-
- $foo = URI->new("Foo:opaque#frag");
-
- print "not " unless ref($foo) eq "URI::_foreign";
- print "ok 1\n";
-
- print "not " unless $foo->as_string eq "Foo:opaque#frag";
- print "ok 2\n";
-
- print "not " unless "$foo" eq "Foo:opaque#frag";
- print "ok 3\n";
-
- # Try accessors
- print "not " unless $foo->_scheme eq "Foo" && $foo->scheme eq "foo";
- print "ok 4\n";
-
- print "not " unless $foo->opaque eq "opaque";
- print "ok 5\n";
-
- print "not " unless $foo->fragment eq "frag";
- print "ok 6\n";
-
- print "not " unless $foo->canonical eq "foo:opaque#frag";
- print "ok 7\n";
-
- # Try modificators
- $old = $foo->scheme("bar");
-
- print "not " unless $old eq "foo" && $foo eq "bar:opaque#frag";
- print "ok 8\n";
-
- $old = $foo->scheme("");
- print "not " unless $old eq "bar" && $foo eq "opaque#frag";
- print "ok 9\n";
-
- $old = $foo->scheme("foo");
- $old = $foo->scheme(undef);
-
- print "not " unless $old eq "foo" && $foo eq "opaque#frag";
- print "ok 10\n";
-
- $foo->scheme("foo");
-
-
- $old = $foo->opaque("xxx");
- print "not " unless $old eq "opaque" && $foo eq "foo:xxx#frag";
- print "ok 11\n";
-
- $old = $foo->opaque("");
- print "not " unless $old eq "xxx" && $foo eq "foo:#frag";
- print "ok 12\n";
-
- $old = $foo->opaque(" #?/");
- $old = $foo->opaque(undef);
- print "not " unless $old eq "%20%23?/" && $foo eq "foo:#frag";
- print "ok 13\n";
-
- $foo->opaque("opaque");
-
-
- $old = $foo->fragment("x");
- print "not " unless $old eq "frag" && $foo eq "foo:opaque#x";
- print "ok 14\n";
-
- $old = $foo->fragment("");
- print "not " unless $old eq "x" && $foo eq "foo:opaque#";
- print "ok 15\n";
-
- $old = $foo->fragment(undef);
- print "not " unless $old eq "" && $foo eq "foo:opaque";
- print "ok 16\n";
-
-
- # Compare
- print "not " unless $foo->eq("Foo:opaque") &&
- $foo->eq(URI->new("FOO:opaque")) &&
- $foo->eq("foo:opaque");
- print "ok 17\n";
-
- print "not " if $foo->eq("Bar:opaque") ||
- $foo->eq("foo:opaque#");
- print "ok 18\n";
-
-
- # Try hierarchal unknown URLs
-
- $foo = URI->new("foo://host:80/path?query#frag");
-
- print "not " unless "$foo" eq "foo://host:80/path?query#frag";
- print "ok 19\n";
-
- # Accessors
- print "not " unless $foo->scheme eq "foo";
- print "ok 20\n";
-
- print "not " unless $foo->authority eq "host:80";
- print "ok 21\n";
-
- print "not " unless $foo->path eq "/path";
- print "ok 22\n";
-
- print "not " unless $foo->query eq "query";
- print "ok 23\n";
-
- print "not " unless $foo->fragment eq "frag";
- print "ok 24\n";
-
- # Modificators
- $old = $foo->authority("xxx");
- print "not " unless $old eq "host:80" && $foo eq "foo://xxx/path?query#frag";
- print "ok 25\n";
-
- $old = $foo->authority("");
- print "not " unless $old eq "xxx" && $foo eq "foo:///path?query#frag";
- print "ok 26\n";
-
- $old = $foo->authority(undef);
- print "not " unless $old eq "" && $foo eq "foo:/path?query#frag";
- print "ok 27\n";
-
- $old = $foo->authority("/? #;@&");
- print "not " unless !defined($old) && $foo eq "foo://%2F%3F%20%23;@&/path?query#frag";
- print "ok 28\n";
-
- $old = $foo->authority("host:80");
- print "not " unless $old eq "%2F%3F%20%23;@&" && $foo eq "foo://host:80/path?query#frag";
- print "ok 29\n";
-
-
- $old = $foo->path("/foo");
- print "not " unless $old eq "/path" && $foo eq "foo://host:80/foo?query#frag";
- print "ok 30\n";
-
- $old = $foo->path("bar");
- print "not " unless $old eq "/foo" && $foo eq "foo://host:80/bar?query#frag";
- print "ok 31\n";
-
- $old = $foo->path("");
- print "not " unless $old eq "/bar" && $foo eq "foo://host:80?query#frag";
- print "ok 32\n";
-
- $old = $foo->path(undef);
- print "not " unless $old eq "" && $foo eq "foo://host:80?query#frag";
- print "ok 33\n";
-
- $old = $foo->path("@;/?#");
- print "not " unless $old eq "" && $foo eq "foo://host:80/@;/%3F%23?query#frag";
- print "ok 34\n";
-
- $old = $foo->path("path");
- print "not " unless $old eq "/@;/%3F%23" && $foo eq "foo://host:80/path?query#frag";
- print "ok 35\n";
-
-
- $old = $foo->query("foo");
- print "not " unless $old eq "query" && $foo eq "foo://host:80/path?foo#frag";
- print "ok 36\n";
-
- $old = $foo->query("");
- print "not " unless $old eq "foo" && $foo eq "foo://host:80/path?#frag";
- print "ok 37\n";
-
- $old = $foo->query(undef);
- print "not " unless $old eq "" && $foo eq "foo://host:80/path#frag";
- print "ok 38\n";
-
- $old = $foo->query("/?&=# ");
- print "not " unless !defined($old) && $foo eq "foo://host:80/path?/?&=%23%20#frag";
- print "ok 39\n";
-
- $old = $foo->query("query");
- print "not " unless $old eq "/?&=%23%20" && $foo eq "foo://host:80/path?query#frag";
- print "ok 40\n";
-
- # Some buildup trics
- $foo = URI->new("");
- $foo->path("path");
- $foo->authority("auth");
-
- print "not " unless $foo eq "//auth/path";
- print "ok 41\n";
-
- $foo = URI->new("", "http:");
- $foo->query("query");
- $foo->authority("auth");
- print "not " unless $foo eq "//auth?query";
- print "ok 42\n";
-
- $foo->path("path");
- print "not " unless $foo eq "//auth/path?query";
- print "ok 43\n";
-
- $foo = URI->new("");
- $old = $foo->path("foo");
- print "not " unless $old eq "" && $foo eq "foo";
- print "ok 44\n";
-
- $old = $foo->path("bar");
- print "not " unless $old eq "foo" && $foo eq "bar";
- print "ok 45\n";
-
- $old = $foo->opaque("foo");
- print "not " unless $old eq "bar" && $foo eq "foo";
- print "ok 46\n";
-
- $old = $foo->path("");
- print "not " unless $old eq "foo" && $foo eq "";
- print "ok 47\n";
-
- $old = $foo->query("q");
- print "not " unless !defined($old) && $foo eq "?q";
- print "ok 48\n";
-
-